﻿//class Parenthesis {
//public:
//    bool chkParenthesis(string A, int n) {
//        stack<char> s;
//        for (int i = 0; i < n; i++) {
//            if (A[i] != '(' && A[i] != ')') {
//                return false;
//            }
//        }
//        for (int i = 0; i < n; i++) {
//            switch (A[i]) {
//            case '(':
//                s.push(A[i]);
//                break;
//            case ')':
//                if (s.empty()) {
//                    return false;
//                }
//                s.pop();
//                break;
//            }
//        }
//        return true;
//    }
//};

//#include <iostream>
//#include <vector>
//using namespace std;
//int main() {
//    int N = 0, count = 0;
//    vector<int> v;
//    cin >> N;
//    for (int i = 0; ; i++) {
//        if (i == 0) {
//            v.push_back(0);
//        }
//        else if (i == 1 || i == 2) {
//            v.push_back(1);
//        }
//        else {
//            v.push_back(v[i - 1] + v[i - 2]);
//        }
//        if (N < v[i]) {
//            int x = v[i] - N;
//            int y = N - v[i - 1];
//            count = x > y ? y : x;
//            break;
//        }
//        if (N == v[i]) {
//            break;
//        }
//    }
//    cout << count << endl;
//    return 0;
//}